package com.mashibing.webmaster.config;

import com.google.code.kaptcha.Constants;
import com.google.code.kaptcha.impl.DefaultKaptcha;
import com.google.code.kaptcha.util.Config;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

import java.util.Properties;

/**
 * @author SNA
 * @date 2025/10/23
 * @Description 验证码生成规则
 **/
@Configuration
public class CaptchaConfig {

    /**
     * 创建并配置验证码生成器Bean
     *
     * @return 配置好的DefaultKaptcha验证码生成器实例
     */
    @Bean
    public DefaultKaptcha captcha() {
        //1、创建DefaultKaptcha验证码生成器实例
        DefaultKaptcha kaptcha = new DefaultKaptcha();

        //2、设置配置信息
        Properties properties = new Properties();
        //验证码字符长度为4
        properties.setProperty(Constants.KAPTCHA_TEXTPRODUCER_CHAR_LENGTH, "4");
        Config config = new Config(properties);
        kaptcha.setConfig(config);

        //3、返回对象
        return kaptcha;
    }
}
